html {
  font-size: 16px;
  height: 100%;
}

body {
	background-color: #0b122e;
	color: #fff;
	font-size: 16px;
}

* {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box
}

$designWidth: 1920;
$designHeight: 929;

@function vw($px) {
  @return ($px/$designWidth) * 100vw;
}

@function vh($px) {
  @return ($px/$designHeight) * 100vh;
}


.fs-12 {
	font-size: 0.75rem;
}

.fs-14 {
	font-size: 0.87rem;
}

.fs-16 {
	font-size: 1rem;
}

.fs-24 {
	font-size: 1.5rem;
}

.fs-32 {
	font-size: 2rem;
}


.fw-700 {
	font-weight: 700;
}

.view-box {
	display: flex;
	flex-direction: column;
}

// 头部
.hd-box {
	width: 100%;
	height: vh(90);
	background: url(~@/assets/images/bg_top.png) bottom center no-repeat;
	position: relative;
	display: flex;
	justify-content: center;
	align-items: center;
	color: #00f6ff;
	
	.hd-title-box {
		display: flex;
		flex-direction: column;
		justify-content: space-between;
		height: vh(58);
		
		.title {
			background-image: linear-gradient(to bottom, #d6e8f7, #6fa3d3);
			-webkit-background-clip: text;
			color: transparent;
		}
		
		.label-box {
			display: flex;
			justify-content: space-around;
			align-items: center;
			background-image: linear-gradient(to right, #20bcc1, #4962b8);
			-webkit-background-clip: text;
			color: transparent;
		}
	}
	
	.hd-operation {
		position: absolute;
		top: vh(20);
		right: vw(20);
		width: vw(500);
		
		.hd-operation-box {
			display: flex;
			align-items: center;
			width: vw(500);
			
			.hd-operation-item {
				display: flex;
				justify-content: center;
				align-items: center;
				width: vw(140);
				display: flex;
			}
			
			.user-box {
				display: flex;
				justify-content: space-around;
				align-items: center;
				width: vw(140);
			}
			
			.time-box {
				display: flex;
				justify-content: space-around;
				align-items: center;
				width: vw(200);
			}
			
			img {
				width: vw(30);
				height: vh(30);
				margin: 0 vw(6);
			}
		}
	}

}

.container {
	position: relative;
	width: 100%;
	height: vh(839);
	
	
	
	#geo {
		width: 100%;
		height: vh(839);
	}
	
	.rotate-circle {
		position: relative;
		width: 3.75rem;
		height: 3.75rem;
		padding: 1.25rem 36.25rem 0.4375rem !important;
	}
	
	.tmap-zoom-control {
	    margin: 1.25rem 36.8rem 0.4375rem !important;
	    display: -ms-flexbox;
	    display: flex;
	    -ms-flex-direction: column;
	    flex-direction: column;
	    -ms-flex-pack: center;
	    justify-content: center;
	    -ms-flex-align: center;
	    align-items: center;
	    position: relative;
	    width: 40px;
	    height: 80px;
	    background: #fff;
	    box-shadow: 0 8px 19px rgba(41,64,102,.12);
	    border-radius: 4px;
	}
	
	.device-box {
		position: absolute;
		left: vw(520);
		bottom: 2.5%;
		width: vw(200);
		height: vh(160);
		z-index: 1001 !important;
		border-bottom: 1px solid #fff;
		display: flex;
		flex-direction: column;
		justify-content: space-around;
		padding: vw(8);
		border: 2px #21314d solid;
		background: #050f26;
		opacity: .9;
		border-image: url(../images/bg_data.png) 30;
		border-width: .5rem;
	}
	
	.device-hd {
		display: flex;
		justify-content: space-between;
		align-items: center;
		height: vh(48);
	}
	
	.device-info {
		display: flex;
		flex-direction: column;
		justify-content: space-between;
		height: vh(112);
	}
	
	.device-info-item {
		display: flex;
		justify-content: space-between;
		align-items: center;
	
	}
	
	.info-item-title {
		position: relative;
		color: #6e91be;
		padding-left: 1rem;
	}
	
	
	.device-info-item:first-child .info-item-title:before {
		position: absolute;
		left: 0;
		width: .6rem;
		height: .6rem;
		content: "";
		background: #59ebe8;
		border-radius: 50%;
	}
	
	
	.device-info-item:nth-child(2) .info-item-title:before {
		position: absolute;
		left: 0;
		width: .6rem;
		height: .6rem;
		content: "";
		background: #fcec06;
		border-radius: 50%;
	}
	
	.device-info-item:nth-child(3) .info-item-title:before {
		position: absolute;
		left: 0;
		width: .6rem;
		height: .6rem;
		content: "";
		background: #e4280e;
		border-radius: 50%;
	}
	
	.device-info-item:last-child .info-item-title:before {
		position: absolute;
		left: 0;
		width: .6rem;
		height: .6rem;
		content: "";
		background: #1d4551;
		border-radius: 50%;
	}
	
	.in-color {
		color: #00b473;
	}
	
	.address-info {
		position: absolute;
		right: vw(520);
		bottom: 2.5%;
		width: vw(320);
		z-index: 1001 !important;
		border-bottom: 1px solid #fff;
		display: flex;
		flex-direction: column;
		/* justify-content: space-around; */
		padding: .3rem;
		border: 2px #21314d solid;
		background: #050f26;
		opacity: .9;
		border-image: url(../images/bg_data.png) 30;
		border-width: .5rem;
	}
	
	.address-name {
		width: 100%;
		position: relative;
		color: #fff;
		padding-left: 1.5rem;
	}
	
	.address-name:before {
		position: absolute;
		top: 20%;
		left: 0;
		width: 1rem;
		height: 1rem;
		content: "";
		background: #e4280e;
		border-radius: 50%;
	}
	
	.address-alert {
		margin: vw(16);
		padding: 0.5rem;
		border: 0.375rem #f8cb35 solid;
		border-radius: vw(20);
		text-align: center;
		background: #c72a1a;
	}
	
	.address-detail {
		height: vh(70);
		display: flex;
		flex-direction: column;
		justify-content: space-between;
		margin:vw(16);
		color: #bcbec2;
	}
	
	.address-detail-item {
		display: flex;
		align-items: center;
	}
	
	.address-detail-title {
		width: vw(60);
	}
	
	
	.address-detail-info {
		width: vw(160);
	}
	
	.address-btn {
		/* width: 100%; */
		display: flex;
		align-items: center;
		justify-content: space-between;
		margin: vw(16);
	}
	
	.address-btn-left button {
		width: vw(128);
		padding: .5rem 0;
		background: #621a1e;
		border: none;
		color: #fff;
	}
	
	
	.address-btn-right button {
		width:  vw(128);
		padding: .5rem 0;
		background: #1d4551;
		border: none;
		color: #fff;
	}
}

.data-box {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	width: vw(480);
	height: vh(799);
	border: 0.06rem #21314d solid;
	background: #050f26;
	opacity: .9;
	border-image: url(~@/assets/images/bg_data.png) 30;
	border-width: vw(20);
	z-index: 1001 !important;
	
	.box-title {
		position: relative;
		display: flex;
		align-items: center;
		width: vw(440);
		height: vh(36);
		padding-left: 2rem;
	}
	
	.box-title:before {
		position: absolute;
		left: 1rem;
		width: 0.25rem;
		height: 1rem;
		content: "";
		background: #59ebe8;
		border-radius: 0.25rem;
	}
}

.left {
	position: absolute;
	left: vw(20);
	top: vw(20);
	
	.device-pie-box {
		position: relative;
		width: vw(440);
		height: vh(200);
		
		img {
			position: absolute;
			width: 100%;
			height: 100%;
		}
		
		.title {
			height: vh(36);
			margin-top: .5rem;
			text-align: center;
			color: #00f6ff;
			font-weight: 900;
			text-shadow: 3px 5px 5px #1a99a2;
		}
		
		.pie-box {
			display: flex;
			justify-content: center;
			align-items: center;
			width: vw(440);
			height: vh(150);
			
			/* 饼图 */
			#pie1,
			#pie2,
			#pie3 {
				width: vw(146);
				height: vh(150);
			}
		}
		
	}
	
	.alert-echart-box {
		display: flex;
		flex-direction: column;
		align-items: center;
		width: vw(440);
		height: vh(338);
		
		.situation-box {
			display: flex;
			align-items: center;
			justify-content: space-around;
			width: vw(400);
			height: vh(80);
			margin: vw(20) 0;
			border-radius: 0.5rem;
			background: #052243;
			
			.situation-box-item {
				display: flex;
				flex-direction: column;
				align-items: center;
				justify-content: space-around;
				height: vh(80);
			}
		}
		
		.bar-box {
			width: vw(400);
			height: vh(180);
			
			#alert-bar {
				width: vw(400);
				height: vh(180);
			}
		}
		
	}
	
	.alert-bar-box {
		display: flex;
		flex-direction: column;
		align-items: center;
		width: vw(440);
		height: vh(200);
		
		.bar-box {
			width: vw(400);
			height: vh(164);
			
			#peration-bar {
				width: vw(400);
				height: vh(164);
			}
		}
	}
}

.right {
	position: absolute;
	right: vw(20);
	top: vw(20);
	
	.video-monitor-box {
		width: vw(440);
		height: vh(338);
		overflow: hidden;
		
		.monitor-box {
			width: vw(440);
			display: flex;
			flex-wrap: wrap;
			justify-content: space-between;
			padding: 0 vw(20);
			
			.monitor-box-item {
				img {
					width: vw(199);
					height: vh(148);
				}
			}
		}
	}
	
	.view-table-box {
		width: vw(440);
		height: vh(200);
		box-sizing: border-box;
		
		.table-box {
			width: vw(440);
			height: vh(164);
			padding: 0 vw(20);
			box-sizing: border-box;
			overflow: hidden;
			
			table {
				box-sizing: border-box;
				width: 100%;
				height: vh(164);
				text-align: center;
				vertical-align: middle;
				overflow: hidden;
				
				.table-th {
					width: vw(400);
					height: vh(30);
					display: flex;
					justify-content: space-around;
					align-items: center;
					border-bottom: 1px solid #104388;
					
					.td1 {
						width: 20%;
						height: vh(30);
						display: flex;
						justify-content: center;
						align-items: center;
					}
					
					.td3 {
						width: 20%;
						height: vh(30);
						display: flex;
						justify-content: center;
						align-items: center;
					}
				}
				
				.table-tr {
					width: vw(400);
					display: flex;
					justify-content: space-around;
					align-items: center;
					height: vh(30);
					border-bottom: 1px solid #1a2239;
					
					.td2 {
						width: 20%;
						height: vh(30);
						display: flex;
						justify-content: center;
						align-items: center;
						overflow: hidden;
						white-space: nowrap;
						text-overflow: ellipsis;
					}
					
					
					
					.td4 {
						width: 20%;
						height: vh(30);
						display: flex;
						justify-content: center;
						align-items: center;
						overflow: hidden;
						white-space: nowrap;
						text-overflow: ellipsis;
					}
				}
			}
		}
	}
}


